1. Field of the Invention
The present invention concerns a stepping motor driver for controlling rotational angular position and rotational speed of a rotor of a stepping motor.
2. Description of the Prior Art
With the high functionalization of systems equipped with motors, motors of which vibration levels are low, and of which rotational speed ranges are wide, are being demanded. Since a stepping motor is caused to make a stepping rotation by changing instantaneously an excitation current for a winding at each time when a set of external command pulses is given, there have been problems that the stepping motor causes vibration and that it tends to step-out when the excitation current is changed.
To lower the vibration level of a stepping motor, a micro-step excitation system in which an inverter of a PWM (pulse width modulation) type is used to smoothly change excitation currents for windings is being generally used. In this case, the excitation currents for the windings are repeatedly changed without delays in accordance with command pulses, and a rotor of the stepping motor rotates following the change of the excitation currents for windings. Also in this case, however, the stepping-out can not be completely avoided, since the excitation currents are applied to the windings independently of the rotational angular position of the rotor.
In order to solve such problems, there is proposed a control system in which an angle detector for detecting rotational angular position of a rotor is provided and the stepping-out is prevented by properly setting an excitation condition at a stepping-out boundary.
A stepping motor controller in which excitation angle is controlled to prevent a stepping-out is disclosed in, for example, IEE Proc.-Electr. Power Appl., Vol. 142, No. 1, January 1995 (hereinafter referred to as prior art 1). According to the stepping motor controller disclosed in the prior art 1, an incremental encoder is used to detect angular position of a rotor, the stepping motor is normally operated by an open-loop control, excitation timing is varied according to an angle deviation that is the difference between a command angle given by a set of command pulses and a rotational angle of the rotor detected by the encoder, and the stepping motor can be operated without stepping-out even at a high speed.
This stepping motor driver comprises;                an encoder for detecting rotational angle of a rotor,        a command and feedback signal receiver that receives angle command signals from outside and the detected angle signals from the encoder,        a speed discriminator that receives outputs of the command and feedback signal receiver and discriminates speed of the rotor,        an angle deviation counter that receives outputs of the command and feedback signal receiver and counts the angle deviations,        a control algorithm implementation part that receives outputs of the command and feedback signal receiver, outputs of the speed discriminator and outputs of the angle deviation counter, and that carries out control algorithm,        a pulse signal generator that receives outputs of the control algorithm implementation part and generates pulse signals, and        a torque signal generator that receives pulse signals from the pulse signal generator and controls motor dynamics of the stepping motor.        
In this stepping motor driver, anticipating that a motor excitation current is delayed with respect to the applied voltage due to the winding inductance, motor excitation timing is advanced to the command angle, and a stable control system of a simple structure is realized. That is, an angle command signal θ* is used without change as the excitation signal as long as the stepping motor remains synchronized, whereas an excitation condition is determined taking rotational angle of the rotor into consideration when synchronization is lost or going to be lost. Thus, stepping-out is prevented by changing the excitation criterion. The condition for the change of the excitation is obtained by an experiment in which the maximum torque generating condition to the rotor speed for a given lead angle is determined.
In the meantime, a proper lead angle γ for a stepping motor that is a kind of synchronous motor can be determined by an equation (1) as follows based on a voltage equation.γ=tan−1{(ωreL)/R}+sin−1{(Ziq)/V+(REemf)/(Z V)}  (1)where γ is the lead angle, ωre is a rotational angular (in electrical angle) frequency (current fundamental frequency) of the motor, L is an inductance of a winding of the motor, R is a resistance of the winding of the motor, Z is an impedance of the winding of the motor, iq is a q-axis component of a current in the winding of the motor (hereinafter referred to as q-axis current), V is a voltage applied to the motor, and Eemf is a speed electromotive force.
Now, how equation (1) is obtained is explained.
Expressing a d-axis component of the voltage applied to the motor by vd, a q-axis component of the voltage applied to the motor by vq, a magnitude of the current in the winding of the motor by I, and a d-axis component of the current in the winding of the motor (hereinafter referred to as d-axis current) by id, relations expressed by equations (2) and (3) are composed.V=(vd2+vq2)1/2  (2)I=(id2+iq2)1/2  (3)
Voltage equation for vd and vq is expressed by an equation (4) as follows.                               [                                                                      v                  d                                                                                                      v                  q                                                              ]                =                                            [                                                                                          R                      +                                              pL                        d                                                                                                                                                -                                                  ω                          re                                                                    ⁢                                              L                        q                                                                                                                                                                                ω                        rc                                            ⁢                                              L                        d                                                                                                                        R                      +                                              pL                        q                                                                                                        ]                        ⁡                          [                                                                                          i                      d                                                                                                                                  i                      q                                                                                  ]                                +                                    ω              re                        ⁢                                          Φ                m                            ⁡                              [                                                                            0                                                                                                  1                                                                      ]                                                                        (        4        )            where p is a differential operator, Ld is a d-axis component of the inductance of the winding, Lq is a q-axis component of the inductance of the winding, ωre is a rotational angular frequency of the rotor of the motor, and Φm is a magnetic flux of the motor.
Here, assuming pLd=pLq=0, and R<<ωreL in a steady condition at a high rotational speed, the equation (4) is approximated and equations (5) and (6) as follows are obtained.vd=−ωreLqiq  (5) vq=ωreLdid+ωreΦm  (6)
Using vd and vq in the equations (5) and (6) for vd and vq in the equations (2) and (3), all equation (7) as follows is obtained.V2=(−ωreLqiq)2+(ωreLdid+ωreΦm)2  (7)
In the equation (7), the maximum voltage applied to the motor is normally less than a source voltage Vo that is normally constant. Additionally, ωreΦm equals a speed electromotive force Eemf.
FIG. 8 shows a relation among internal voltages of a motor in the equation (7), when ωreΦm>Vo. As shown in FIG. 8, the magnitude of the voltage V(=Vo) applied to the motor equals a resultant vector OB of a vector AC in the direction of the d-axis that is a reactance drop ωreLqiq, a vector CB in the direction of the q-axis that is a reactance drop ωreLdid, and a vector OA in the direction of the q-axis that is a back speed electromotive force −ωreΦm=−Eemf. A circle P shows a circle having a radius Vo. FIG. 8 shows that a motor can be driven even at a rotational speed at which a speed electromotive force Eemf exceeds a source voltage Vo by controlling a phase of a voltage applied to the motor.
In a steady condition at a high rotational speed, pLd=pLq=0, and the equation (4) can be approximated into an equation (8) as follows.                               [                                                                      V                  d                                                                                                      V                  q                                                              ]                =                                            [                                                                    R                                                                                                      -                                                  ω                          re                                                                    ⁢                      L                                                                                                                                                          ω                        re                                            ⁢                      L                                                                            R                                                              ]                        ⁡                          [                                                                                          i                      d                                                                                                                                  i                      q                                                                                  ]                                +                                    ω              re                        ⁢                                          Φ                m                            ⁡                              [                                                                            0                                                                                                  1                                                                      ]                                                                        (        8        )            
From the equation (8), the q axis current iq is obtained by the following equation (9)iq=(V/Z)sin(γ−φ)−(R/Z2)ωreΦm  (9)where the following are assumed;vd=V cos γ  (10)vq=V sin γ  (11) Ld=Lq=L  (12)Z=R+jωreL  (13)andφ=tan−1(ωreL/R)  (14)
Further, assuming that a torque generated by a motor is in proportion to iq, then,                                                                            T                =                                ⁢                                                      k                    t                                    ⁢                                      i                    q                                                                                                                          =                                ⁢                                                                            {                                                                        (                                                                                    k                              t                                                        ⁢                            V                                                    )                                                /                        Z                                            }                                        ⁢                                          sin                      ⁡                                              (                                                  γ                          -                          ϕ                                                )                                                                              -                                                            (                                                                        k                          t                                                /                                                  Z                          2                                                                    )                                        ⁢                    R                    ⁢                                                                                   ⁢                                          ω                      re                                        ⁢                                          Φ                      m                                                                                                                                (          15          )                    where kt is a proportional constant.
Thus, an equation (16) expressing an lead angle γ, corresponding to the above equation (1), is obtained.                                                                            γ                =                                ⁢                                  ϕ                  +                                                            sin                                              -                        1                                                              ⁢                                          {                                                                                                    (                            ZT                            )                                                    /                                                      (                                                                                          k                                t                                                            ⁢                              V                                                        )                                                                          +                                                                              [                                                          R                              /                                                              (                                ZV                                )                                                                                      ]                                                    ⁢                                                      ω                            re                                                    ⁢                                                      Φ                            m                                                                                              }                                                                                                                                              =                                ⁢                                                                            tan                                              -                        1                                                              ⁢                                          {                                                                        (                                                                                    ω                              re                                                        ⁢                            L                                                    )                                                /                        R                                            }                                                        +                                                            sin                                              -                        1                                                              ⁢                                          {                                                                                                    (                                                          Zi                              q                                                        )                                                    /                          V                                                +                                                                              [                                                          R                              /                                                              (                                ZV                                )                                                                                      ]                                                    ⁢                                                      ω                            re                                                    ⁢                                                      Φ                            m                                                                                              }                                                                                                                                              =                                ⁢                                                                            tan                                              -                        1                                                              ⁢                                          {                                                                        (                                                                                    ω                              re                                                        ⁢                            L                                                    )                                                /                        R                                            }                                                        +                                                            sin                                              -                        1                                                              ⁢                                          {                                                                                                    (                                                          Zi                              q                                                        )                                                    /                          V                                                +                                                                              (                                                          RE                              emf                                                        )                                                    /                                                      (                            ZV                            )                                                                                              }                                                                                                                                (          16          )                    
Since the resistance R and the inductance L of the winding of the motor are regarded to be known values, the lead angle γ can be determined from the q-axis current iq and the rotational angular frequency ωre of the motor, using the above equation.
By giving the lead angle γ according to the equation (1) or (16), a stepping motor can be maintained at an equilibrium condition to a torque at an arbitrary rotational speed. That is, by controlling the lead angle γ, a stepping motor can be rotationally controlled to a high speed region without stepping-out.
A stepping motor driver, in which a computing element computes the lead angle γ using the equation (1) from a command angle θ* and a detected angle θf, is disclosed in Proc., No.110, Industrial Application Branch, Japan Society of Electric Engineering, 2001 (p. 659, second volume) (hereinafter referred to as prior art 2). In this stepping motor driver, the command angle θ* is given from the outside, whereas the detected angle θf is obtained by converting signals transmitted from an encoder connected to a rotor axis of the stepping motor into a rotational angle of the motor.
This stepping motor driver comprises;                a computing element that computes the lead angle γ from a command angle θ* given from the outside and a detected angle θf obtained by converting signals transmitted from an encoder connected to a rotor axis of the stepping motor into a rotational angle of the motor,        current detectors that detect current values iαf, iβf in the windings of the motor,        a first coordinate transformer that transforms the current values in iαf, iβf into current values idf, iqf in a rotational coordinate system,        a subtractor that obtains a current deviation that is the difference between a command current value id* given from outside and the current values idf, both in the rotational coordinate system,        another subtractor that obtains another current deviation that is the difference between a command current value iq* given from the outside and the current value iqf, both in the rotational coordinate system,        current controllers that amplify the current deviations,        a second coordinate transformer that receives outputs of the computing element and outputs of the current controllers, and transforms the amplified current deviations in the rotational coordinate system into values in the fixed coordinate system, and        a PWM inverter that receives outputs of the second coordinate transformer, and generates applied voltage to windings of the stepping motor for rotating the stepping motor.        
Thus, in the stepping motor driver disclosed in the prior art 2, a lead angle control using the equation (1) by the computing element can be made. However, since the lead angle γ is controlled in accordance with changes in the load torque, it is necessary to detect the load torque or the q-axis current iq (load torque current) required for generating the load torque.
Accordingly, there is a problem that the computing of the lead angle is complicated and, accordingly, the system for computing the lead angle is expensive. Particularly, a very long time is required in computing the lead angle by a micro-computer, in case that a micro-computer is used in the system.
As mentioned above, in the stepping motor controller disclosed in the prior art 1 in which the lead angle control is made, it is necessary to experimentally survey motor characteristics beforehand in order to make the control of the stepping motor comply with the stepping motor to be controlled.
In the stepping motor driver disclosed in the prior art 2, it is necessary to detect the load torque current, the computing of the lead angle is complicated and the system for computing the lead angle is expensive, since the lead angle γ is adjusted according to the changes in the load torque, that is, the q-axis current iq in the equation (1).